/*
 * 文件名: Invalidate.java
 * 版    权：  Copyright PingAn Technology All Rights Reserved.
 * 描    述: [该类的简要描述]
 * 创建人: XUZHIWEN050
 * 创建时间: 2011-12-30
 * 
 * 修改人：
 * 修改时间:
 * 修改内容：[修改内容]
 */
package app.utils;
/**
 * @author XUZHIWEN050
 * @date 2011-12-30
 * @version [Android PABank C01, @2011-12-30]
 * @description
 */
public class Invalidate {
	/**
	 * 
	 * [空校验]<BR>
	 * [功能详细描述]
	 * @param params
	 * @return
	 */
	public static boolean emptyInvalidate(String params){
		if(params!=null)
			return params.replaceAll(" ", "").equals("") ? false : true;
		return false;
	}
	/**
	 * 
	 * [空校验]<BR>
	 * [功能详细描述]
	 * @param params
	 * @return 通过校验，返回true，否则返回false
	 */
	public static boolean emptyInvalidate(String[] params){
		if(params!=null){
			int len = params.length;
			for(int i=0;i<len;i++){
				if(!emptyInvalidate(params[i]))
					return false;
			}
			return true;
		}			
		return false;
	}
	
	/**
	 * 
	 * [是否符合身份证长度校验]<BR>
	 * [功能详细描述]
	 * @param idCard
	 * @return
	 */
	public static boolean idCardInvalidate(String idCard){
		return LengthInvalidate(idCard, 18);
	}
	/**
	 * 
	 * [证件长度校验]<BR>
	 * [功能详细描述]
	 * @param card
	 * @return
	 */
	public static boolean cardInvalidate(String type, String cardNo){
		if(type.equals("身份证")){
			return LengthInvalidate(cardNo, 18) | LengthInvalidate(cardNo, 15);
		}else if(type.equals("军人军官证")){
			return LengthInvalidate(cardNo, 9) | LengthInvalidate(cardNo, 10);
		}else if(type.equals("港澳台居民通行证")){
			return LengthInvalidate(cardNo, 9) | LengthInvalidate(cardNo, 10) | LengthInvalidate(cardNo, 11);
		}else if(type.equals("外籍护照")){
			return LengthInvalidate(cardNo, 10);
		}else if(type.equals("CVN2")){
			return LengthInvalidate(cardNo, 3);
		}else
			return false;
	}
	/**
	 * 
	 * [长度校验]<BR>
	 * [功能详细描述]
	 * @param value
	 * @param length
	 * @return 若value为空，返回false
	 */
	public static boolean LengthInvalidate(String value, int length){
		if(value!=null){
			return value.length()==length ? true : false;
		}
		return false;
	}
	/**
	 * 
	 * [长度校验]<BR>
	 * [功能详细描述]
	 * @param value
	 * @param length
	 * @return 若value为空，返回false
	 */
	public static boolean LengthInvalidate(String[] value, int length){
		if(value!=null){
			int len = value.length;
			for(int i=0;i<len;i++){
				if(!LengthInvalidate(value[i], length))
					return false;
			}
			return true;
		}
		return false;
	}
}

